import request from "@/utils/request";

export interface TrademarkData {
  id?: number;
  logoUrl: string;
  tmName: string;
}

interface PageTrademarkListData {
  records: TrademarkData[];
  total: number;
  size: number;
  current: number;
  searchCount: boolean;
  pages: number;
}

export default {
  // Delete  /admin/product/baseTrademark/remove/{id}
  // 删除BaseTrademark
  deleteTrademark(id: number) {
    return request.delete<any, null>(
      `/admin/product/baseTrademark/remove/${id}`
    );
  },

  // POST /admin/product/baseTrademark/save
  // 新增BaseTrademark
  // PUT /admin/product/baseTrademark/update
  // 修改BaseTrademark
  // 通过咱们观察发现 无论是添加还是修改 都要传递一个品牌对象 里面都有id是不对的
  // 添加时咱们只能收集到用户输入的名称以及图片地址 id不是咱们前端生成的 是后端拿到某个数据存放在数据库中时自动生成的id值
  // 添加没有id  修改有id(因为那些品牌数据是咱们向后端发送请求获取到的)

  // 同一个接口函数完成添加和修改
  addOrUpdate(trademark: TrademarkData) {
    if (trademark.id) {
      //修改
      return request.put<any, null>(
        `/admin/product/baseTrademark/update`,
        trademark
      );
    } else {
      //添加
      return request.post<any, null>(
        `/admin/product/baseTrademark/save`,
        trademark
      );
    }
  },

  // GET /admin/product/baseTrademark/{page}/{limit}
  // 分页列表
  getPageList(page: number, limit: number) {
    return request.get<any, PageTrademarkListData>(
      `/admin/product/baseTrademark/${page}/${limit}`
    );
  },

  // GET  /admin/product/baseTrademark/getTrademarkList
  // getTrademarkList 获取所有的品牌列表
  getTrademarkList(){
    return request.get<any,TrademarkData[]>(`/admin/product/baseTrademark/getTrademarkList`)
  }
};
